package demo10;


import java.util.concurrent.*;

// 阻塞队列 ： 生产者消费着模型
// 1. 解耦合
// 2. 削峰填谷
public class Test23 {
    public static void main(String[] args) throws InterruptedException {
        // java 中自带的BlockQueue
        // 其中的put 和 take 方法都是线程安全的
        BlockingQueue<String> blockingQueue=new LinkedBlockingQueue<>();
        blockingQueue.put("111");
        blockingQueue.put("222");
        blockingQueue.put("333");
        blockingQueue.put("444");
        System.out.println(blockingQueue.take());
        System.out.println(blockingQueue.take());
        System.out.println(blockingQueue.take());
        System.out.println(blockingQueue.take());
        System.out.println(blockingQueue.take());
    }
}
